home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Plus 1996 #5
/
Amiga Plus CD - 1996 - No. 5.iso
/
pd
/
spiele
/
boulderdäsh
/
install
/
boulderdäsh.install
next >
Wrap
Text File
|
1996-06-07
|
14KB
|
417 lines
; $VER: BoulderDäsh.install 1.54 (07.06.96)
; Install script for BoulderDäsh (Workbench 2.0 or higher)
;
(COMPLETE 0)
;(USER 2)
(SET #ApplicationName "BoulderDäsh")
(SET #ApplicationDir "sys:")
(SET #ArchiveDir "/")
(SET #Language -1)
(SET #Documents -1)
(SET #ApplicationKeyfile (CAT #ApplicationName ".key"))
;=============================================================================
; German strings
(IF (= @language "deutsch")
(
(SET default_lang 2)
(SET #bad-kick "Sie benötigen Workbench 2.0 oder größer")
(SET #bad-installer
(CAT "Achtung! Es ist eine alte Version des Programmes 'Installer' "
"auf Ihrem Amiga!\n\nDie Installation benötigt mindestens Installer 42.9.\n\n"
"Bitte überprüfen Sie Ihre Konfiguration!"
))
(SET #App-InstallMsg
(CAT "\n\BoulderDäsh Installationsskript.\n"
"Diese Skript installiert BoulderDäsh auf Ihrem Amiga.\n\n"
"Lesen Sie das Anleitungs-File für weitere Informationen\n"
" über den Vertrieb von BoulderDäsh.\n\n"
"BoulderDäsh © 1987-96 Guido Mersmann\n"
"All Rechte reserviert."
))
(SET #App-Where
(CAT "Wo möchten Sie BoulderDäsh installieren ?\n"
"(Ein Verzeichnis wird angelegt)"
))
(SET #App-Update
(CAT "\nEin BoulderDäsh-Verzeichnis existiert im ausgewählen"
" Verzeichnis. Wenn Sie fortfahren,"
" bestätigen Sie, daß Sie die alte BoulderDäsh-Installation"
" mit der neuesten Version updaten wollen.\n"
"Verschiedene BoulderDäsh-Dateien (z.B Prefs) werden überschrieben!"
))
(SET #App-Main "Welche Version von BoulderDäsh möchten Sie installieren?")
(SET #App-Main-help
(CAT "Die OS2.0+ Version läuft unter allen Systemen ab OS2.0."
" Die OS2.1+ Version hat den Nutzen, daß sie weniger Resourcen"
" benutzt, wenn sich BoulderDäsh im Hintergrund befindet. Dazu MUß"
" die Locale.library eingebunden sein. Für die OS3.0+ gilt das selbe"
" wie für die OS2.1 Verison. Es werden OS3.0+ Routinen benutzt, die"
" weiteren Speicher sparen."
))
(SET #App-Language "\nWelche Sprachen sollen installiert werden ?")
(SET #App-Language-help
(CAT "\nDer Amiga kann in vielen verschiedenen Sprachen"
" arbeiten. Um Plattenkapazität zu sparen können Sie"
" nur die Sprachen anwählen, die sie benötigen"
" Haken Sie also einfach die Sprachen ab, die Sie"
" Ihrem System zugänglich machen wollen."
@askoptions-help
))
(SET #App-Docs "\nWelche Anleitungs- und Informationsdateien wollen Sie installieren ?")
(SET #App-Exit "\nBoulderDäsh installiert !!")
))
;=============================================================================
; English strings
(IF (<> @language "deutsch")
(
(SET default_lang 4)
(SET #bad-kick "You must have at least Workbench 2.0+")
(SET #bad-installer
(CAT "You have an old version of the program 'Installer' "
"on your Amiga!\n\nThe installation procedure needs at least Installer 42.9.\n\n"
"Please check your configuration!"
))
(SET #App-InstallMsg
(CAT "\n\BoulderDäsh installation script.\n"
"This script installs BoulderDäsh on your Amiga.\n\n"
"Read the DOK-file for more information\n"
" on the distribution of BoulderDäsh.\n\n"
"BoulderDäsh © 1997-96 Guido Mersmann\n"
"All rights reserved."
))
(SET #App-Where
(CAT "Where would you like to install BoulderDäsh ?\n"
"(A drawer will be created)"
))
(SET #App-Update
(CAT "\nA BoulderDäsh drawer does already exist in the selected "
" directory. By selecting \"Proceed\", you"
" indicate that you want to update the BoulderDäsh"
" installation with the most recent version.\n"
"Several BoulderDäsh specific files will be overwritten!"
))
(SET #App-Main "Which BoulderDäsh version should be installed ?")
(SET #App-Main-help
(CAT "The OS2.0+ version should only be used on Systems with OS2."
" The OS2.1+ and the OS3.0+ version need less Memory. Locale is required!"
" Special OS3.0+ functions are used to save more memory."
))
(SET #App-Language "\nWhich languages should be installed ?")
(SET #App-Language-help
(CAT "\nThe Amiga can be operated in many different"
" languages."
"To reduce the amount of space consumed by the"
" language files, you can select to have only the"
" files of specific languages copied.\n\n"
"Simply check the boxes of the languages you wish"
" to have available on your system.\n\n"
@askoptions-help
))
(SET #App-Docs "\nWhich text files should be installed in \"BoulderDäsh:Docs\" ?")
(SET #App-Exit "\nBoulderDäsh installed !!")
))
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; Ask for Catalogs
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_AskCatalogs #Language
(SET #Dummy (ASKOPTIONS
(PROMPT #App-Language)
(HELP #App-Language-help)
(CHOICES
"English"
"Deutsch")
(DEFAULT #Language)
)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; Copy Selected Catalogs
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_CopyCatalogs #Language
(SET n 0)
(SET #DestinationRoot (TACKON #ApplicationDir "Catalogs"))
(SET #SourceRoot (TACKON #ArchiveDir "Catalogs"))
(MAKEDIR #DestinationRoot)
(while (< n 2)
(SET #Dummy (SELECT n "english" "deutsch"))
(
(IF (IN #Language n)
(
(MAKEDIR (TACKON #DestinationRoot #Dummy))
(COPYFILES
(SOURCE (TACKON #SourceRoot #Dummy))
(DEST (TACKON #DestinationRoot #Dummy))
(HELP @copyfiles-help)
(ALL)
)
)
)
)
(SET n (+ n 1))
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; Ask for docs
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_AskDocs #Documents
(SET #Dummy (ASKOPTIONS
(PROMPT #App-Docs)
(HELP @askoptions-help)
(CHOICES
"english"
"deutsch"
)
(DEFAULT #Documents)
)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; Copy docs
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_CopyDocs #Documents
(SET n 0)
(SET #DestinationRoot (TACKON #ApplicationDir "Docs"))
(SET #SourceRoot (TACKON #ArchiveDir "Docs"))
(MAKEDIR #DestinationRoot)
(while (< n 2)
(SET #Dummy (SELECT n
"english"
"deutsch"
)
)
(
(IF (IN #Documents n)
(
(MAKEDIR (TACKON #DestinationRoot #Dummy))
(COPYFILES
(SOURCE (TACKON #SourceRoot #Dummy))
(DEST (TACKON #DestinationRoot #Dummy))
(HELP @copyfiles-help)
(INFOS)
(ALL)
)
)
)
)
(SET n (+ n 1))
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; Copy_Dir (Dir)
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_CopyDir #Dummy
(SET #DestinationRoot (TACKON #ApplicationDir #Dummy))
(SET #SourceRoot (TACKON #ArchiveDir #Dummy))
(MAKEDIR #DestinationRoot)
(COPYFILES
(SOURCE #SourceRoot)
(DEST #DestinationRoot)
(HELP @copyfiles-help)
(OPTIONAL <force>)
(ALL)
(INFOS)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; Copy_File (Name)
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_CopyFile #Dummy
(COPYFILES
(SOURCE (TACKON #ArchiveDir #Dummy))
(DEST #ApplicationDir)
(HELP @copyfiles-help)
(OPTIONAL <force>)
(ALL)
(INFOS)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; GetApplicationDir
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_GetApplicationDir #Dummy
(SET #ApplicationDir
(TACKON
(ASKDIR
(PROMPT #App-Where)
(HELP @askdir-help)
(default #Dummy)
)
#ApplicationName
)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; P_Requirements
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_Requirements
; Workbench 37 or better required
(IF (< (/ (getversion) 65536) 37)
(
(abort #bad-kick)
)
)
; Installer 42.9 or better required
(if (< @installer-version 2752521)
(
(message #bad-installer)
(exit (quiet))
)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; P_Update
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_Update
(if (= (exists #ApplicationDir) 2)
(message #App-Update)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; P_AskBinary
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_AskBinary
(set #Dummy (/ (getversion) 65536))
(if (= #Dummy 37) (set #Binary 0))
(if (= #Dummy 38) (set #Binary 1))
(if (> #Dummy 38) (set #Binary 2))
(set #Binary (askchoice
(prompt #App-Main)
(help #App-Main-help)
(choices
"OS2.0+"
"OS2.1+"
"OS3.0+"
)
(default #Binary)
)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; P_CopyBinary
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_CopyBinary
(set #Binary (Select #Binary #ApplicationName "Bin/OS21" "Bin/OS30"))
(copyfiles
(source (tackon #ArchiveDir #Binary) (infos))
(dest #ApplicationDir)
(newname #ApplicationName)
(help @copyfiles-help)
(optional <force>)
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; P_KeyFile
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(PROCEDURE P_KeyFile
(SET #Dummy (tackon (tackon #ArchiveDir "Keyfile") #ApplicationKeyfile))
(if (<> (exists #Dummy (noreq)) 0) ((P_CopyDir "KeyFile"))
)
) ;PROCEDURE
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
; MAIN
;----------------------------------------------------------------------------
;----------------------------------------------------------------------------
(P_Requirements)
(message #App-installmsg)
(welcome)
(SET #ApplicationDir (P_GetApplicationDir #ApplicationDir))
(COMPLETE 1)
(P_Update)
(SET #Binary (P_AskBinary))
(COMPLETE 2)
(SET #Language (P_AskCatalogs #Language))
(COMPLETE 3)
(SET #Documents (P_AskDocs #Documents))
(COMPLETE 4)
;***** Delete old Data and Prefs
(MAKEDIR #ApplicationDir (INFOS))
(DELETE (TACKON #ApplicationDir "BoulderDäsh.prefs"))
(DELETE (TACKON #ApplicationDir "Games/BDash_I.Game"))
(DELETE (TACKON #ApplicationDir "Scores/BDash_I.Game"))
(DELETE (TACKON #ApplicationDir "Graphics/ClassicAmiga.fnt"))
(COMPLETE 10)
(P_CopyDir "Games")
(COMPLETE 40)
(P_CopyDir "Caves")
(COMPLETE 45)
(P_CopyDir "SampleSets")
(COMPLETE 65)
(P_CopyDir "Title")
(COMPLETE 70)
(P_CopyDir "Scores")
(COMPLETE 80)
(P_CopyDir "Graphics")
(COMPLETE 90)
(P_CopyDir "Fonts")
(COMPLETE 95)
(P_CopyBinary)
(P_CopyFile (CAT #ApplicationName ".info"))
(P_CopyCatalogs #Language)
(P_CopyDocs #Documents)
(P_Keyfile)
(COMPLETE 100)
;(exit #App-exit)